package com.edu.whty.entity.disk;


import com.edu.whty.common.constants.Constant;
import com.edu.whty.entity.base.BaseEntity;
import lombok.Data;
import org.apache.commons.lang.StringUtils;

import java.util.List;

/**
 * @desc	资源目录关系表实体类
 * @author	
 * @date	2014-5-14
 */
@Data
public class ResOwner extends BaseEntity {

	private static final long serialVersionUID = 1L;
	/** 资源标签 */
	private List<String> resTagsList;
	
	/** 资源缩略图地址 */
	private String thumbnailUrl;
	/** 资源标签名称 */
	private String tagName;

	/** 资源/目录ID */
    private Long fileLength;
    
	/** 资源/目录ID */
    private String dirId;

    /** 资源/目录名称 */
    private String dirName;

	/**资源ID*/
    private String resId;

    /** 上级目录ID */
    private String parentId;

    private String classificationName;
    /** 上级目录ID组 */
    private List<String> parentIds;

    /** 是否文件夹，0：是，1：不是 */
    private String isFolder;

    private String isPublish="0";

    private String isReport="0";

    /** 属主ID */
    private String userId;

    private String userName;

    /** 机构ID */
    private String orgId;

    /** 审核状态  0:待审核，1：审核通过  2：不通过 */
    private String auditStatus;

    /** 审核意见 */
    private String auditDesc;

    /** 审核时间 */
    private java.util.Date auditTime;

    /** 上报时间 */
    private java.util.Date reportTime;

	/** 是否允许下载：0=是，1=否*/
	private String allowDownload;

	/** 下载地址 */
	private String downloadUrl;
	/** 预览地址 */
	private String previewUrl;

    /** 接受者ID */
    private String recipientId;

    private String createTimestr;

    private String createDay;

    private String modifyTimestr;

    private Long downCount;

    private Long viewCount;

	/**属主类型: 0=个人; 1=群组; 2=机构 */
    private String ownerType;

    private String fileName = null;

    private String fileSize = null;

    private String fileExt;

    /**开始时间**/
    private String timeStart;

    /**结束时间**/
    private String timeEnd;

	/**开始时间**/
    private String timeStartUpdate;

	/**结束时间**/
	private String timeEndUpdate;

    /**资源标题**/
    private String title;

    /**资源类型**/
    private String contentType;

    /**云存储ID**/
    private String fId;

    /**资源标签**/
    private String keyWords;

    /**资源ID数组**/
    private List<String> resIds;


    private String publicStatus;

    private String groupId;

    private Integer count;

    /** 社区资源属性 */
    private String resourceOwnerType; // 社区资源归属类型: 1=社区资源; 2=小组资源 ; 3=活动资源

    private String isRecommend; // 是否为社区推荐资源: 0=不是; 1=是

    private String portalAuditStatus; // 审核状态：0=未审核;1=已审核

    private String communityId; // 社区ID

    private String communityGroupId; // 社区小组ID

    private String communityResource; // 是否社区资源: 0=否; 1=是;新加2=名师工作室资源

    private String resReportId; //上报记录PkId

    private String isPublic = "0";	//是否公开访问	0:公开访问，1:不是

    private String creatorName;	//资源提供者

    private String periodId;//学段ID

    private String periodName;//学段名

    /**学科id**/
    private String subjectId;	//学科Id

    /**学科名称**/
    private String subjectName;	//学科名称

    /** 教材ID */
    private String textbookId;

    /** 教材名称 */
    private String textbookName;

    /** 年级ID */
    private String gradeId;

    /** 年级名称 */
    private String gradeName;

    /** 版本ID */
    private String editionId;

    /** 版本名称 */
    private String editionName;

    /** 册别Id */
    private String volumeId;

    /** 册别名称 */
	private String volumeName;

	/** 名师资源是否同步*/
	private String issynchronization;

	private List<String> fileExtList;

	private String fileOfExt;

	private String id;

	/** 资源收藏数量 */
	private Long collectedCount;

	/** 资源评分 */
	private String score;

	/** 排序字段 */
	private String orderBy;

	/**资源发布：0：未发布，1：已发布**/
	private String publishStatus;

	private String fileMd5;

	private String canRemoved;

	private String formatId;
	/**
	 * 所属工作站
	 */
    private String wid;

	/**上传资源公开*/
	private String resPublic;

	/** 网盘上报资源审核状态 */
	private String reportStatus;

	/** 评论次数 */
	private Long commentCount;

	private String resSource;//资源来源(为网络教研提供)

	 /** 资源形式 : 1=实体资源; 2=网络资源*/
    private String resForm;

    /** URL资源地址 */
    private String url;

    /** 二维码生成路径 */
    private String qrCodeUrl;

    /** 搜索关键词 */
    private String keyWord;

    private String appId;

    private String appName;

    /** 简介 */
    private String intro;

    /**
	 * 来源：浙江-0:学习平台，1：万达同步资源
	 * */
    private String resOwnerFrom;

    /**上报资源类型**/
    private String resTypeId;

    /**类型名**/
    private String typeName;

    private String isDelete; //逻辑删除，删除后进入回收站

    private String fromResId; //转载资源id，如有值说明资源为转载的

    /**
     * 产品数组 查询参数
     */
    protected List<String> productCodes;

    private String csVerifyStatus;

    protected String productCode;

    private String format;

    private String classificationId;

    /**
     * 非数据库字段
     */
    private String chapterId;//章节ID
    private List<String> chapterIds;//章节ID集合
    private String kPointId;//知识点ID
    private String searchBMText;//根据编目过滤导航栏展示的文本

	/**
	 * wps相关属性信息
	 */
	private String wpsFileId;

	private List<String> formatIdList;  //查询条件

	//转码任务ID
	private String transformId;

	//FILE的ID
	private String fileId;
	/**
	 * 用户所在的平台编码
	 */
	private String platformCode;

	/**
	 * 2:  管理员上传
	 * 3:  专题资源库上传
	 * 0:  上报的资源
	 */
	private String platResSource;
	/**
	 * 浙江-资源公开标识：1-公开
	 */
	private String publicToGuest;
	/**
	 * 判断是否是浙江平台-1:是
	 *
	 *
	 */
	private String isZj;
	/**
	 * 浙江-被复制的dirId,用于同步删除
	 */
	private String oldDirId;
	/**
	 * 浙江-资源类型:1：基础资源，2：专题资源，3：基础资源和专题资源
	 */
	private String resType;
	/**
	 * 浙江-资源类型：1:平台资源 2:本校资源 3:个人资源 4:个人收藏资源 5个人上传资源
	 */
	private String type;
	/**
	 * 浙江-原创标识：1是原创，0非原创
	 */
	private String original;
	/**
	 * 浙江-名师资源是否能下载：0可以，1不能
	 */
	private String isCanDownload;
	/**
	 * 浙江-名师资源能否共享：0=可以共享，1=不能共享
	 */
	private String isCanShare;
	/**
	 * 浙江-是否同步到宁波：0未同步，2已经同步，（1是查询所有）
	 */
	private String isSynNB;
	/**
	 * 宁波字段
	 */
	private String ownerFromZJToNB;
	/**
	 * 浙江-机构上报资源审核员
	 */
	private String auditMember;
	/**
	 * 浙江-0：定价，1：不定价
	 */
	private String isPrice;
	/**
	 * 浙江-价格
	 */
	private Float price;
	/**
	 * 浙江-微软officeKey
	 */
	private String officeKey;
	/**
	 * 浙江-resource=9省外用户时资源详情地址
	 */
	private String playUrl;

	private String resName;

	private String ext;

	private String downUrl;

	private String prevUrl;

	private String issharecourse;



	/**
	 * 获取产品格式
	 * @return
	 */
	public String getFormat() {
		if(StringUtils.isBlank(format)){
//			if(null != getClassificationIdList() && getClassificationIdList().contains("jl10")){
//				return "zip";		//课时包
//			}else{
//				return Consts.getFileFormat(getFileName());
//			}
			return Constant.getFileFormat(getFileName());
		}else{
			return format;
		}
	}



	//设置文件类型
		public void setFileExt(String fileExt) {
			this.fileExt = fileExt;

			if (StringUtils.isNotBlank(fileExt)) {
				if (Constant.ioc_doc.contains(fileExt) || "wps".equals(fileExt)) {
					this.fileOfExt = "doc";
				}else if (Constant.ioc_pdf.contains(fileExt)) {
					this.fileOfExt = "pdf";
				}else if (Constant.ioc_html.contains(fileExt)) {
					this.fileOfExt = "html";
				}else if (Constant.ioc_ppt.contains(fileExt)) {
					this.fileOfExt = "ppt";
				}else if (Constant.ioc_image.contains(fileExt)) {
					this.fileOfExt = "image";
				}else if (Constant.ioc_movie.contains(fileExt)) {
					this.fileOfExt = "movie";
				}else if (Constant.ioc_xls.contains(fileExt)) {
					this.fileOfExt = "xls";
				}else if (Constant.ioc_txt.contains(fileExt)) {
					this.fileOfExt = "txt";
				}else if (Constant.ioc_music.contains(fileExt)) {
					this.fileOfExt = "music";
				}else{
					this.fileOfExt = "file";
				}
			}else {
				this.fileOfExt = "file";
			}
		}



}
